package com.wcpdoc.exam.core.dao;

import com.wcpdoc.core.dao.BaseDao;
import com.wcpdoc.exam.core.entity.Exam;
import com.wcpdoc.exam.core.entity.MyExam;
import com.wcpdoc.exam.core.entity.MyMockExam;

import java.math.BigDecimal;
import java.util.List;

/**
 * 我的考试数据访问层接口
 * <p>
 * v1.0 zhanghc 2017-06-19 16:28:29
 */
public interface MyMockExamDao extends BaseDao<MyMockExam> {

    /**
     * 获取我的考试列表
     * <p>
     * v1.0 zhanghc 2020年9月30日上午11:00:50
     *
     * @param examId
     * @return List<MyExam>
     */
    List<MyMockExam> getList(Integer examId);

    /**
     * 获取我的考试列表
     * <p>
     * v1.0 zhanghc 2022年6月2日上午9:51:25
     *
     * @param userId
     * @return List<MyExam>
     */
    List<MyMockExam> getListForUser(Integer userId);

    /**
     * 获取我的考试列表
     * <p>
     * v1.0 chenyun 2021年7月30日下午3:49:53
     *
     * @param examId
     * @param userId
     * @return MyExam
     */
    MyMockExam getMyExam(Integer examId, Integer userId);

    /**
     * 获取考试列表
     * <p>
     * v1.0 zhanghc 2022年7月18日下午2:34:40
     *
     * @param userId
     * @return List<Exam>
     */
    List<MyMockExam> getExamList(Integer userId);

    /**
     * 我的考试清空
     * <p>
     * v1.0 zhanghc 2023年3月22日下午5:38:23
     *
     * @param id void
     */
    void clear(Integer examId);

    /**
     * 清理分数
     *
     * @param examId
     * @param userId
     */
    void clearAnswer(Integer examId, Integer userId);
//    void clearAnswer(Integer examId, Integer userId, BigDecimal totalScore);
}
